/*
 * @Author: cmd
 * @we_chat: cmd_develop
 * @Date: 2018-12-22 10:27:10
 * @LastEditors: cmd
 * @LastEditTime: 2019-03-18 20:26:56
 * @Description: 声音管理 
 *  play_music：播放音乐
 *  set_music_volume：设置音乐音量（0~1） orc.sound_manager.play_music('common/bg_music',true);   
 *  play_effect：播放音效
 *  set_effect_volume：设置音效音量（0~1） orc.sound_manager.play_effect('common/btn_music');      
 */

import orc from '../../orc'
const {ccclass, property} = cc._decorator;

@ccclass
export default class common_sound extends cc.Component {   

    constructor() {
        super();        
    }
    base_sound_url:string = 'sounds/';
    music_audio:any;
    effect_audio:any;
    onLoad () {
        //本地音乐声音大小
        console.log("本地音乐声音大小:",orc.local_data.sound_music_volume);
        //本地音效声音大小  orc.local_data.
        console.log("本地音效声音大小:",orc.local_data.sound_effect_volume);
        //本地音乐开关
        console.log("本地音乐开关:",orc.local_data.sound_music_switch);
        //本地音效开关
        console.log("本地音效开关:",orc.local_data.sound_effect_switch);
    }
    
    /**
     * 播放音乐
     * @param url: 播放地址
     * @param loop: 是否循环
     */
    play_music(url:string,loop:boolean){
        if(orc.local_data.sound_music_switch == true)
        {
            url = this.base_sound_url + url;
            cc.loader.loadRes(url,cc.AudioClip,(err, audioClip) => {
                console.log("播放背景音乐");               
                cc.audioEngine.playMusic(audioClip, loop);
            });
        }
    }

    /**
     * 停止音乐    
     */
    stop_music(){
        cc.audioEngine.stopMusic();
    }

    /**
     * 播放音效
     * @param url: 播放地址
     */
    play_effect(url:string){
        if(orc.local_data.sound_effect_switch == true)
        {
            url = this.base_sound_url + url;
            cc.loader.loadRes(url,cc.AudioClip,(err, audioClip) => {
                console.log("播放背景音乐");               
                    cc.audioEngine.playEffect(audioClip,false);
            });
        }        
    }

    // 设置音乐音量（0~1）
    set_music_volume(value:number){
        cc.audioEngine.setMusicVolume(value);
    }

    // 设置音效音量（0~1）
    set_effect_volume(value:number){
        cc.audioEngine.setEffectsVolume(value);
    }

    // update (dt) {}
}
